package ui.juego

import dominio.ubicaciones.Pais
import org.uqbar.commons.model.UserException
import org.uqbar.commons.utils.Observable

@Observable
class Viajar {
	
	@Property Investigacion investigacion
	@Property Pais destinoSeleccionado
	
	new(Investigacion investigacion) {
		this.investigacion = investigacion
	}
	
	def getPaisesPosibles() {
		investigacion.paisActual.conexiones
	}
	
	def viajarADestino() {
		if(destinoSeleccionado != null) {
			investigacion.viajar(destinoSeleccionado)
			investigacion.registrarViaje(destinoSeleccionado)
		}
		else throw new UserException("No hay un destino seleccionado")
	}
	
	def volverAlPaisAnterior() {
		if(investigacion.paisAnterior != null) {
			investigacion.viajar(investigacion.paisAnterior)
		}
		else throw new UserException("Estas en el país del robo! No podes ir mas atras pa..")
	}
	
}